The present invention relates to the signal conversion of three-channel input signals which is carried out, for example, from R (red), G (green) and B (blue) color signals to C (cyan), M (magenta), Y (yellow) and K (black) signals in a color image output device such as a color printer and a color copier.
As a method of converting RGB-color image signals to CMYK-color image signals, the linear masking and the secondary masking improved from the linear masking are known for long. These methods, however, have the insufficient color reproduction accuracy.
What is called the three-dimensional table interpolation method has come to be used frequently in recent years. Many techniques have been proposed as this method.
According to the first technique, a cubic lattice is set in the RGB space of the input signals, and the CMYK value of each lattice point is stored in a memory. The cube is divided into unit cubes having vertices at the lattice points in the RGB space. The unit cube is selected by the most significant bits of the input RGB signals, and the CMYK of the output signals are obtained by the triple linear interpolation from the CMYK values of the eight vertices associated with the selected unit cube.
In the second technique, a cubic lattice is set in the RGB space of the input signals, and the CMYK value of each lattice point is stored in a memory. Each unit cube having vertices at lattice points is divided into tetrahedrons, and a unit cube is selected by the most significant bits of the RGB input signal. From the unit cube thus selected, a tetrahedron is selected based on the least significant bit data, and the color correction values corresponding to the RGB input signals are determined by the linear interpolation of the color correction values of the vertices of the selected tetrahedron.
According to the third technique, a body centered cubic lattice is set in the RGB space of the input signals, and the CMYK value of each lattice point is stored in a memory. The cube is divided into tetrahedrons each having vertices at the lattice points of two adjacent unit cubes. A unit cube is selected by the most significant bits of the RGB input signal, and from the unit cube thus selected, a tetrahedron is selected by the least significant bit data. Then, the color correction values corresponding to the RGB input signals are determined by the linear interpolation of the color correction values of the vertices of the selected tetrahedron.
The three techniques described above involve the linear interpolation including the multiple one, and therefore the interpolation value lacks smoothness as it changes sharply on the surface of the polyhedron making up a unit for interpolation processing. This causes the reduced interpolation accuracy.
As a method of assuring the smooth interpolation even in a polyhedron, the three-dimensional interpolation function for the simple cubic lattice sampling method is disclosed in “Theorem for Sampling Steady Random Variables in Multidimensional Space”, Institute of Telecommunication Engineers Journal, Vol. 42 (1959), No. 4, p. 421.
This method, however, poses the problem of the excessive amount of calculations due to the requirement for the considerable number of lattice points.
For simplifying, though two-dimensionally, the interpolation function for square lattices, “Digital image processing of earth observation sensor data”, IBM Journal Research & Development, Vol. 20 (1976), p. 40, discloses a method of assuring the smooth interpolation in the boundary lines using the conversion values of the neighboring lattice points by approximating the interpolation function by the tertiary function for each section. This method can be used for the interpolation for the simple cubic lattice easily from the contents described in “Theorem for Sampling Steady Random Variables in Multidimensional Space” cited above.
Nevertheless, the above-mentioned method requires lattice points in the number of 64, i.e. the third power of “4” for the interpolation of one point, and therefore harbors the problem of the increased size of hardware and the longer processing time for software.